package com.example;

import java.util.Map;

import com.zl.quickdoc.SpringApiHelper;
import com.zl.quickdoc.model.DocCfgParam;

public class MyQuickDocTest {
    
    public static void main(String[] args) throws Exception {
        DocCfgParam p = new DocCfgParam();
//        p.setTemplatePath("D:/zlspace/workspace/testdoc/");//自定义模板路径,templatePath+"/apidoc/htmldoc.vm"
//        Map<String, String> typeConvertMap = p.getTypeConvertMap();//转换显示类型
//        Map<String, Object> properties = p.getProperties();//额外属性,和projectTitle等同级，用于拓展模板属性
        p.setApiPath("D:/zlspace/workspace/spring-api-doc/doc");//文档输出路径
        p.setIncludePackages("my.example.ZlTestController$,my.example.ZlTestController2$");//扫描接口包路径，多个逗号分隔
        p.setJavaPath("D:/zlspace/workspace/spring-api-doc/src/test/java/my/example");//JAVA源码路径，多个逗号分隔
        p.setProjectTitle("测试接口");
        p.setTitle("（测试环境）");
        p.setServerIp("http://127.0.0.1:8080/system");
        p.setProxyPrefix("");//拼接一个前缀
        
        p.setAutoOpenFlag(true);//生成后是否打开文档
        p.setOrderFlag(false);//是否开启排序
        p.setApiOrderFlag(false);//接口排序
        p.setTypeConvertFlag(true);
        p.setModuleGroupFlag(false);//模块分组,class标题@title相同的一组
        p.setVersionFlag(true);
        p.setVersion("1.0.0");//版本号
        //记录接口变更备注说明，换行用\n
        Map<String, String> changeHis = p.getChangeHis();
        changeHis.put("1.0.0","初始版本... \n");
        changeHis.put("1.0.1","需求变更调整XXXX... \n");
        try{
          SpringApiHelper.htmlDoc(p);//HTML文档
          SpringApiHelper.wordDoc(p);//word文档
          SpringApiHelper.javaTestDoc(p);//JAVA测试类
          SpringApiHelper.markdownDoc(p);//markdown文档
        }catch(Exception e){
            e.printStackTrace();
        }
        
        System.out.println("结束");
    }
}
